home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / newsgrp / group02b.txt / 000157_icon-group-sender_Mon Dec 9 12:46:02 2002.msg < prev    next >
Internet Message Format  |  2003-01-02  |  3KB

  1. Return-Path: <icon-group-sender>
  2. Received: (from root@localhost)
  3.     by baskerville.CS.Arizona.EDU (8.11.1/8.11.1) id gB9Jk0M22361
  4.     for icon-group-addresses; Mon, 9 Dec 2002 12:46:00 -0700 (MST)
  5. Message-Id: <200212091946.gB9Jk0M22361@baskerville.CS.Arizona.EDU>
  6. Date: Mon, 9 Dec 2002 12:28:21 -0700
  7. From: Clint Jeffery <jeffery@cs.nmsu.edu>
  8. To: icon-group@cs.arizona.edu
  9. Subject: Re: Icon compiler
  10. Errors-To: icon-group-errors@cs.arizona.edu
  11. Status: RO
  12.  
  13.  
  14. [Ladvansky Karoly asserts:]
  15.    I have this Fibonacci test for benchmarks. With MS C ++ it takes 8 secs to
  16.    calculate the result for 40 as input and for Icon it takes about 600 secs...
  17.    even 3 times speed improvement, it'd still be 200 secs for
  18.    Icon... I think it's very exaggerated to say Icon programs can be
  19.    faster than C.
  20.  
  21. I think Ladvansky is doing fine to speak blunt truth, of course Icon is
  22. wayyy slower than C *on average*.  The original poster wasn't talking about
  23. an average case, he was talking about one particular real application where
  24. Icon beats C, and I have heard of many others.  So Ladvansky, I think you
  25. are overgeneralizing the other poster's report, just as you overgeneralize
  26. your own test result, and come to a slightly-incorrect conclusion, from
  27. which you basically called someone else a liar who was simply reporting a fact.
  28.  
  29. When does Icon beat C, if ever?  (1) When there are potentially complex
  30. algorithms and data structures needed, but the C code is suboptimal due to
  31. limited time (if programmer time is infinite, this goes away).  Given the
  32. same amount of time to write C or Icon, you may be able to implement a faster
  33. algorithm for the Icon version than for C.  Do you have the time & technical
  34. knowhow to implement hash tables that dynamically resize when you need them?
  35. Icon gives you them for free.  (2) When the application execution time
  36. depends mainly on the things Icon is best at.  Then the Icon time is mainly
  37. spent in the runtime system, which is quite optimized C code.
  38.  
  39. I think Ladvansky would find, if he did any real testing, that the
  40. difference between Icon and C varies radically depending on application.
  41. Fibonacci is a highly artificial test of one tiny aspect of performance.
  42. But still, C is wayyy faster than Icon on average, even if results vary.
  43.  
  44. Lastly, I would like to say that the quest for optimal performance for
  45. the Icon implementation is far from over, and there is a lot of room for
  46. the right researchers (maybe, graduate student researchers?) to contribute
  47. materially to performance in ways that will benefit this entire community.
  48. Maybe some of you-all should consider going back to school to help out. :-)
  49.  
  50. [Ladvansky politely observes]
  51. >   However slow compared to C, I do recognise Icon's power and
  52. >   I'm considering adding it to my software toolchest.
  53.  
  54. Thanks for this kind observation. :-)
  55.  
  56. Clint jeffery@cs.nmsu.edu
  57.